package base.regex;

import java.util.TreeSet;

public class RegexTest {

    public static void main(String[] args) {
        test();
    }

    /*
     * ip地址排序。
     * 192.168.10.34 127.0.0.1 3.3.3.3 105.70.11.55
     */
    public static void test() {
        String ip_str = "192.168.10.34 127.0.0.1 3.3.3.3 105.70.11.55";

        //1. 为了让ip可以按照字符串顺序比较，只要让ip的每一段的位数相同。
        //所以，补零，按照每一位所需最多0进行补充，每一段都加两个0。
        ip_str = ip_str.replaceAll("(\\d+)", "00$1");
        System.out.println(ip_str);         //00192.00168.0010.0034 00127.000.000.001 003.003.003.003 00105.0070.0011.0055

        //然后每一段保留数字3位。三位有效数字
        ip_str = ip_str.replaceAll("0*(\\d{3})", "$1");
        System.out.println(ip_str);
//        192.168.010.034 127.000.000.001 003.003.003.003 105.070.011.055

        //1. 将ip地址切出。
        String[] ips = ip_str.split(" +");      //对空格一次或多次出现进行切割
        TreeSet<String> ts = new TreeSet<String>();

        for (String ip : ips) {
            ts.add(ip);
        }

        for (String ip : ts) {
            System.out.println(ip.replaceAll("0*(\\d+)", "$1"));
        }

    }

    {
//        邮件地址
        String regex = "[a-zA-Z0-9_]+@[a-zA-Z0-9]+(\\.[a-zA-Z]{1,3})+";
    }


}
